(function () {
    var globalobj = {}
    $(function () {
        $.ajax({
            url: "./../server/getgoodslist.php",
            dataType: "json",
            type: "post"
        }).then(function (res) {
            globalobj = res.data
            if (res.status == 1) {
                $(".txtproduction").show()
                res.data.forEach(function (el, index) {
                    var sizeArr = JSON.parse(el.size);
                    var $UL =
                        `<ul class="clearFix addBoxul" data-index="${index}">
										<li class="firstli"><span class="selectImg chooseed lichoose"></span></li>
										<li>
											<p class="listimg">
												 <a href="#">
												 <img src="./../server/${el.url}" alt="">
												 </a>
											</p>
											<div class="listtxt">
												<span><a href="#">${el.title}</a></span>
												<span><a href="#">${el.name}</a></span>
												<div class="describte clearFix">
													<div class="describteLeft">
														<span>颜色:${el.color}</span>
														<span>尺寸:${el.size2}</span>
													</div>
													<div class="btnRight">
														<span class="changeMess">修改</span>
													</div>
													<div class="hidechange">
														<div class="changetop">
															<div class="topimg"></div>
														</div>
														<div class="changebtm">
															<div class="closeimg"></div>
															<div class="datachange clearFix">
																<div class="tiltetxt">尺寸</div>
																 <ul class="clearFix sizelist">`
                    sizeArr.forEach(function (ele) {
                        $UL += `<li><a href="javascript:void(0)" class="size">${ele.size}</a></li>`
                    })
                    $UL += ` </ul>
															</div>
															<div class="surebtn">确定</div>
														</div>
													</div>
												</div>
											</div>
										</li>
										<li class="itemprice">
											<p>￥${Number(el.price)}.00</p>
										</li>
										<li class="choosenum">
											<div class="choose">
												<span class="remove">-</span>
												<span><input class="shopnum" type="text" value="${Number(el.number)}" readonly ></span>
												<span class="add">+</span>
											</div>
										</li>
										<li>￥0.00</li>
										<li class="total">${Number(el.total)}.00</li>
										<li>
											<div class="deletea">删除</div>
										</li>
									</ul>`
                    $(".addBox").append($UL)
                })
            }else{
                $(".txtproduction").hide()
                layer.msg("您还没添加商品,快去逛逛商城吧")
            }


        })

        // 购物车减数量
        $(".box").on("click", ".remove", function () {
            //点击一下则数量减一,直到为1就不减了
            var goodsnum = $(this).next().find(".shopnum").val()
            //得到购物包的总价
            var totalprice = Number($(".addshopcar").text().replace("¥", ""))
            if (goodsnum > 1) {
                $(this).next().find(".shopnum").val(--goodsnum)
                //点击的这行商品的总价等于单价和数量的乘积
                var goodsprice = $(this).parents(".choosenum").prev(".itemprice").find("p").text().replace("￥", "")
                $(this).parents(".choosenum").next().next(".total").text(goodsnum * Number(goodsprice) + ".00")
                //点击一次,购物包的总价为 原来的价格减这一行的单价
                $(".addshopcar").text("¥" + (totalprice - Number(goodsprice)) + ".00")

                //如果这行是被选中的,那么点击一次,结算的 总价等于原来的金额减这行的单价
                if ($(this).parents(".choosenum").siblings(".firstli").eq(0).find("span").hasClass("selectAll")) {
                    $(".totalprice").text("￥" + (Number($(".totalprice").text().replace("￥", "")) - Number(goodsprice)) + ".00")
                }
            } else {
                layer.msg("再点就没了喔")
            }
            //点击减 按钮,给后台发送数据,根据购买者ID修改后台数据 数量和总价
            var singleobj = globalobj[$(this).parents(".addBoxul").data("index")]
            var updateobj = {
                cid: singleobj.id,
                num: goodsnum
            }
            $.ajax({
                url: "./../server/updategoods.php",
                data: updateobj,
                dataType: "json",
                type: "post"
            }).then(function (res) {
                console.log(res)
            })
        })
        //加
        $(".box").on("click", ".add", function () {

            ////点击一下则数量加一
            $(this).prev().find(".shopnum").val(Number($(this).prev().find(".shopnum").val()) + 1)
            // 点击的这行商品的总价等于单价和数量的乘积
            var goodsnumber = $(this).prev().find(".shopnum").val()
            var goodsprice = $(this).parents(".choosenum").prev(".itemprice").find("p").text().replace("￥", "")
            $(this).parents(".choosenum").next().next(".total").text(goodsnumber * Number(goodsprice) + ".00")

            //得到购物包的总价
            var totalprice = Number($(".addshopcar").text().replace("¥", ""))
            //点击一次,购物包的总价为 原来的价格加这一行的单价
            $(".addshopcar").text("¥" + (totalprice + Number(goodsprice)) + ".00")

            //如果这行是被选中的,那么点击一次,结算的 总价等于原来的金额加这行的单价
            if ($(this).parents(".choosenum").siblings(".firstli").eq(0).find("span").hasClass("selectAll")) {
                $(".totalprice").text("￥" + (Number($(".totalprice").text().replace("￥", "")) + Number(goodsprice)) + ".00")
            }
            //点击加按钮,给后台发送数据,根据购买者ID修改后台数据 数量和总价
            var singleobj = globalobj[$(this).parents(".addBoxul").data("index")]
            var updateobj = {
                cid: singleobj.id,
                num: goodsnumber
            }
            $.ajax({
                url: "./../server/updategoods.php",
                data: updateobj,
                dataType: "json",
                type: "post"
            }).then(function (res) {
                console.log(res)
            })
        })
        // 打开修改size信息
        $(".box").on("click", ".changeMess", function () {

            $(this).parent(".btnRight").next(".hidechange").show()
            // 获取原来数据库里的数据
            var sizeStr = $(this).parent(".btnRight").prev(".describteLeft").children("span").eq(1).text().split(":")[1]
            // var $Size=$(".addBox").find(".changeMess")
            //拿到所有的尺寸
            let $changesize = $(this).parent(".btnRight").next(".hidechange").find(".size")
            $changesize.each(function (index, el) {
                //遍历所有尺寸,看其中是否有和数据库返回的尺寸一至的,再判断其他尺寸是否有添加选中的背景,
                // 没有的话,则默认给和数据库一致的添加,有其他尺寸被选,则不添加
                if ($(el).text() == sizeStr) {

                    var flag = $(el).parent("li").siblings().children("a").hasClass("selecteddata")
                    if (!flag) {
                        $(el).addClass("selecteddata")
                    }
                }
            })
        })

        //选择修改size
        $(".box").on("click", ".size", function () {
            //为点击的尺寸添加背景属性,表示选中
            if($(this).hasClass("selecteddata")){
                $(this).removeClass("selecteddata")
            }else{
                $(this).addClass("selecteddata").parent("li").siblings().children("a").removeClass("selecteddata")
            }
            
        })

        // 关闭修改信息
        $(".box").on("click", ".closeimg", function () {
            $(this).parents(".hidechange").hide(200)
        })

        //按确定键修改size
        $(".box").on("click", ".surebtn", function () {
            //找到所有的尺寸
            var self = this
            var dataObj = {}
            let $changesize = $(this).prev(".datachange").find(".size")
            $changesize.each(function (index, ele) {
                //如果找到被选中的那个,则按确定键添加的就是这个尺寸
                var flag = $(ele).hasClass("selecteddata")
                if (flag) {
                    // 拿到当前尺寸和当前数据的id
                    //发送ajax 修改后台的数据
                    dataObj.size2 = $(ele).text()
                    dataObj.cid = globalobj[$(ele).parents(".addBoxul").data("index")].id
                    // dataObj.uid=globalobj[$(ele).parents(".addBoxul").data("index")].uid
                    // console.log(dataObj)

                    $.ajax({
                        url: "./../server/changesize.php",
                        data: dataObj,
                        dataType: "json",
                        type: "post"

                    }).then(function (res) {
                        console.log(res)
                        if (res.status == 1) {
                            $(self).parents(".hidechange").siblings(".describteLeft").children("span").eq(1).text("尺寸:" + $(ele).text())

                            layer.msg(res.msg)
                        }else{
                            layer.msg("已经有这个尺码了哦")
                        }
                    })

                }
            })
        })

        //选中与不选
        $(".box").on("click", ".chooseed", function () {
            if ($(this).hasClass("selectImg")) {
                //选中按钮空白,点击则添加勾
                $(this).removeClass("selectImg").addClass("selectAll")
                //选中的数量+1
                $(".selectTxt2 b").text(Number($(".selectTxt2 b").text()) + 1)
                var goodstotal = $(this).parent("li").siblings(".total").eq(0).text()
                //总金额等于选中的总价+原本的金额
                $(".totalprice").text("￥" + (Number(goodstotal) + Number($(".totalprice").text().replace("￥", ""))) + ".00")
            } else {
                //选中按钮不空白,点击则去除勾
                $(this).removeClass("selectAll").addClass("selectImg")
                //选中的数量-1
                $(".selectTxt2 b").text(Number($(".selectTxt2 b").text()) - 1)
                var goodstotal = $(this).parent("li").siblings(".total").eq(0).text()
                //总金额等于原本的金额-选中的总价
                $(".totalprice").text("￥" + (Number($(".totalprice").text().replace("￥", "")) - Number(goodstotal)) + ".00")

                //被选中的数量和总的行数不相等,则全选按钮去除勾
                $(".allselect").removeClass("selectAll").addClass("selectImg")
            }
            if ($(".selectAll").length != 0) {
                //结算按钮变红色
                $(".settlementbtn").addClass("setBtn")
            } else {
                //结算按钮变灰色
                $(".settlementbtn").removeClass("setBtn")
            }
            if ($(".selectAll").length == $(".lichoose").length) {
                //被选中的数量和总的行数相等,则全选按钮添加勾
                $(".allselect").removeClass("selectImg").addClass("selectAll")
            }
        })

        //全选
        $(".box").on("click", ".allselect", function () {
            //结算按钮变红色
            $(".settlementbtn").addClass("setBtn")
            let $chooseli = $(".lichoose")
            if ($(this).hasClass("selectImg")) {
                //全选是空白,则添加勾.给所有商品列表也添加勾,结算数量等于商品列表数量,总价等于商品列表所有商品总价之和
                $(".allselect").removeClass("selectImg").addClass("selectAll")
                console.log($chooseli)
                $chooseli.removeClass("selectImg").addClass("selectAll")
                var goodsliArr = $(".total")
                var goodstotal = 0
                for (var i = 0; i < goodsliArr.length; i++) {
                    goodstotal += Number($(goodsliArr[i]).text().replace("￥", ""))
                }
                $(".totalprice").text("￥" + goodstotal + ".00")
                $(".selectTxt2 b").text(goodsliArr.length)
            } else {
                //结算按钮变灰色
                $(".settlementbtn").removeClass("setBtn")
                //全选不是空白,则去勾.给所有商品列表也去除勾,结算数量清零,总价清零
                $(".allselect").removeClass("selectAll").addClass("selectImg")
                $chooseli.removeClass("selectAll").addClass("selectImg")
                $(".totalprice").text("￥0.00")
                $(".selectTxt2 b").text(0)
            }
        })

        function deleteGoods(self, parent) {
            var indexNumber=$(self).parents(parent).data("index")
            var hidegoodslist= $(".goodsListUL").children(".hidegoodslist");
            var singleobj = globalobj[$(self).parents(parent).data("index")]
            var hideTotal = Number($(self).parent("li").prev(".total").text())
            var totalprice = Number($(".addshopcar").text().replace("¥", ""))
            var redTotalPrice= Number($(".totalprice").text().replace("￥",""))
            var updateobj = {
                cid: singleobj.id
            }
            layer.confirm("确定删除该商品吗", {
                icon: 3,
                title: "删除提示",
                btn: ["确定删除", "取消"]
            }, function (index) {
                $.ajax({
                    url: "./../server/removegoods.php",
                    data: updateobj,
                    dataType: "json",
                    type: "post"
                }).then(function (res) {

                    if (res.status == 1) {
                        layer.msg("删除成功")
                        hidegoodslist.each(function(index,ele){
                            if($(ele).data("tmpindex")==indexNumber){
                                $(ele).remove()
                            }
                        })
                        $(self).parents(parent).remove()
                        //改变购物包的数量和价格
                        $(".listnum").text(Number($(".listnum").text()) - 1)
                        $(".addshopcar").text("¥" + (totalprice - hideTotal) + ".00")
                        //如果是选中状态,修改选中数量和结算价格,并判断没有选中,结算按钮变为灰色,全选变为空选
                        if ($(self).parent("li").siblings(".firstli").eq(0).find("span").hasClass("selectAll")) {
                            var btxtnum = Number($(".selectTxt2 b").text())
                            $(".selectTxt2 b").text(--btxtnum)
                            $(".totalprice").text("￥" +(redTotalPrice-hideTotal) + ".00")
                            if($(".selectAll").length==0){
                                $(".settlementbtn").removeClass("setBtn")
                                $(".allselect").removeClass("selectAll").addClass("selectImg")
                            }
                            if($(".addBox").children().length==0){
                                $(".settlementbtn").removeClass("setBtn")
                                $(".allselect").removeClass("selectAll").addClass("selectImg")
                                $(".txtproduction").hide()
                                layer.msg("没有商品了,快去逛逛商城吧")
                            }
                        }
                    } else {
                        layer.msg("删除失败")
                    }
                    layer.close(index)
                })
            }, function () {})
        }
        //删除商品
        $(".box").on("click", ".deletea", function () {
            var self = this;
            deleteGoods(self, ".addBoxul")
        })

        //快捷删除
        // $(".box").on("click",".deletea2",function () {
        //     var btxtnum= Number($(".selectTxt2 b").text())
        //     var slectedUL=$("[class*='lichoose selectAll']")
        //     console.log(slectedUL)
        //     var updateobj={}
        //     if(slectedUL.length!=0){
        //         slectedUL.each((index,el)=>{
        //             var singleobj=globalobj[$(el).parents(".addBoxul").data("index")]
        //              updateobj["cid"+index]=singleobj.id
        //
        //
        //         })
        //         console.log(updateobj)
        //         for(){}
        //     }
        //
        //
        // })
        //结算按钮结算金额
        $(".box").on("click", ".settlementbtn", function () {
            console.log(111)
            var totalPrice = Number($(".totalprice").text().replace("￥", ""))
            var textPrice = $(".selectTxt2").text()
            if ($(this).hasClass("setBtn")) {
                layer.confirm("共" + textPrice + "商品,总额为:" + totalPrice + "元,是否立即支付?", {
                    icon: 3,
                    title: "支付提示",
                    btn: ["好的", "取消"]
                }, function (index) {

                    layer.msg("支付完成")
                    layer.close(index)
                }, function (index) {})
            }
        })




        //页面切换
        $(".box").on("click", ".pageChange", function () {
            $(this).addClass("current").siblings().removeClass("current")
            if ($(this).text() == "在售") {
                $(".select1").show()
                $(".select2").hide()
                $(".select3").hide()
            }
            if ($(this).text() == "心愿单") {
                $(".select1").hide()
                $(".select2").show()
                $(".select3").hide()
            }
            if ($(this).text() == "已失效") {
                $(".select1").hide()
                $(".select2").hide()
                $(".select3").show()
            }
        })
    })

})()